package org.example;
import javafx.application.Platform;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.stage.FileChooser;
import javafx.stage.Stage;
import java.io.File;

public class FileHandler {
    private Stage primaryStage;
    private ImageView imageView;
    private File selectedFile; // 添加一个字段来存储选择的文件

    public FileHandler(Stage primaryStage, ImageView imageView) {
        this.primaryStage = primaryStage;
        this.imageView = imageView;
    }

    // 处理打开图片文件的逻辑
    public void handleOpenImage() {
        FileChooser fileChooser = new FileChooser();
        fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter("Image Files", "*.png", "*.jpg", "*.jpeg", "*.gif"));
        selectedFile = fileChooser.showOpenDialog(primaryStage);
        if (selectedFile!= null) {
            Image image = new Image(selectedFile.toURI().toString());
            Platform.runLater(() -> {
                imageView.setImage(image);
            });
        }
    }

    // 新增的方法，用于关闭图片显示
    public void handleCloseImage() {
        Platform.runLater(() -> {
            imageView.setImage(null);
        });
    }

    // 添加获取文件名的方法
    public String getFileName() {
        if (selectedFile!= null) {
            return selectedFile.getName();
        }
        return null;
    }
}